using System;
using System.Collections.Generic;

namespace Illinois.Core.Interfaces
{
  public interface IRepository<T> where T : class , IEntity
  {
    IEnumerable<T> FindAll();
    //ICollection<T> Find(Expression<Func<T, bool>> predicate);
    IEnumerable<T> Find(Func<T, bool> predicate);
    T FindById(int id);
    void Add(T newEntity);
    void Remove(T entity);
  }
}
